package com.sinosoft.sinopay.service.paychannel.biz.service;

import java.util.List;

import com.sinosoft.sinocloud.platform.common.web.pagequery.PageGrid;
import com.sinosoft.sinocloud.platform.common.web.pagequery.PageQueryModel;
import com.sinosoft.sinopay.paychannel.dto.PayThirdpayDTO;
import com.sinosoft.sinopay.service.paychannel.generated.model.PayThirdpayMain;
/**
 * 【支付渠道配置】
 * @author dengcanyang
 * @version V1.0
 * @date 2016-11-29 下午18:28
 */
public interface PayChannelConfigService {
    /**
     * 查询第三方支付渠道信息
     * @param tSid   第三方支付渠道sid
     * @return 符第三方字符渠道详细细心
     */
	PayThirdpayDTO selectPayThirdpayInfoBySid(Integer cSid);
	
	/**
     * 新增支付渠道
     * @param PayThirdpayMain
     * @return  成功返回渠道sid,失败返回0
     */
	boolean insertPayChannel(PayThirdpayDTO cPayThirdpayDTO);
	
	/**
     * 修改支付渠道信息
     * @param  PayThirdpayMain
     * @return 成功返回渠道sid,失败返回0
     */
	boolean updatePayChannelInfo(PayThirdpayDTO cPayThirdpayDTO);
	
	/**
     * 分页查询支付渠道信息列表
     * @param PayThirdpayMain
     * @return PageGrid
     */
     PageGrid selectPayChannelPageList(PageQueryModel cPageQueryModel);
	
	/**
     * 查询单条支付渠道信息详情
     * @param 支付渠道sid
     * @return PayThirdpayMain
     */
     PayThirdpayDTO selectPayChannelDetailsBySid(String cSid);
	
	/**
     * 删除支付渠道信息 
     * @param 支付渠道sid
     * @return 成功返回渠道sid,失败返回0
     */
	
	boolean deletePayChannelInforBySid(String cSid);

	/**
	 * 查询支付渠道名称信息列表
	 * 
	 * @param 
	 * @return List<PayThirdpayDTO>
	 */
	List<PayThirdpayDTO> selectThirdpayNameList();
	
	/**
     * 根据 渠道编码 查询 渠道详细信息
     * @param thirdpayCode
     * @return List<PayThirdpayDTO> 
     */
    PayThirdpayDTO  queryPayThirdpayMainByThirdpayCode(String thirdpayCode);
}
